package models

import (
	"time"
)

/**
 * @Author: zhaobin
 * @Description TODO
 * @Date: 2022-04-29 19:20
 */

type Access struct {
	Id          int64     `json:"id"`
	AccessName  string    `json:"access_name"` //权限名称
	Type        int       `json:"type"`        //节点类型 :  1、表示模块    2、表示菜单
	Url         string    `json:"url"`         //路由跳转地址
	ParentId    int       `json:"parent_id"`   //此parent_id和当前模型的id关联       parent_id = 0 表示模块
	Description string    `json:"description"`
	Sort        int       `json:"sort"`
	Status      *int      `json:"status"`
	CreatedAt   time.Time `json:"created_at"` // 列名是 `created_at`
	UpdatedAt   time.Time `json:"updated_at"` // 列名是 `updated_at`
	AccessItem  []Access  `json:"access_item" gorm:"foreignKey:ParentId;references:Id"`
	// 为true表示拥有该权限
	Checked bool `json:"checked" gorm:"-"` // 忽略本字段
}

func (Access) TableName() string {
	return "access"
}
